package com.feixiang.feixiangpicturebackend.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.feixiang.feixiangpicturebackend.model.dto.space.analyze.*;
import com.feixiang.feixiangpicturebackend.model.entity.Space;
import com.feixiang.feixiangpicturebackend.model.entity.User;
import com.feixiang.feixiangpicturebackend.model.vo.space.analyze.*;

import java.util.List;

/**
 * @author 20144
 * @description 针对表【space(空间)】的数据库操作Service
 * @createDate 2025-07-12 15:54:29
 */
public interface SpaceAnalyzeService extends IService<Space> {
    /**
     * 获取空间使用情况
     * @param spaceUsageAnalyzeRequest
     * @param loginUser
     * @return
     */
    SpaceUsageAnalyzeResponse getSpaceUsageAnalyze(SpaceUsageAnalyzeRequest spaceUsageAnalyzeRequest, User loginUser);

    /**
     * 获取空间图片分类分析
     */
    List<SpaceCategoryAnalyzeResponse> getSpaceCategoryAnalyze(SpaceCategoryAnalyzeRequest spaceCategoryAnalyzeRequest, User loginUser);


    /**
     * 获取空间图片标签分析
     */
    List<SpaceTagAnalyzeResponse> getSpaceTagAnalyze(SpaceTagAnalyzeRequest spaceTagAnalyzeRequest, User loginUser);

    /**
     * 获取空间图片大小分析
     */
    List<SpaceSizeAnalyzeResponse> getSpaceSizeAnalyze(SpaceSizeAnalyzeRequest spaceSizeAnalyzeRequest, User loginUser);

    /**
     * 分析空间上传用户行为
     */
    List<SpaceUserAnalyzeResponse> analyzeSpaceUserBehavior(SpaceUserAnalyzeRequest spaceUserAnalyzeRequest, User loginUser);

    /**
     * 分析空间排名仅管理员
     */
    List<Space> getSpaceRankAnalyze(SpaceRankAnalyzeRequest spaceRankAnalyzeRequest, User loginUser);

}
